Apparatus and method for supplying content aware photo filters

ABSTRACT

A mobile client device includes a photo controller to identify when a client device captures a picture. Photo filters are designated based upon attributes of the mobile client device. The picture with a selected photo filter is sent to a server for routing to other client devices.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.16/419,556 filed May 22, 2019, which is a continuation of U.S. patentapplication Ser. No. 15/829,544 filed Dec. 1, 2017, now issued as U.S.Pat. No. 10,348,960, which is a continuation of U.S. patent applicationSer. No. 15/224,262 filed Jul. 29, 2016, now issued as U.S. Pat. No.10,154,192, which is a continuation of U.S. patent application Ser. No.14/977,380, filed on Dec. 1, 2015, now issued as U.S. Pat. No.9,407,816, which is a continuation of U.S. patent application Ser. No.14/325,270, filed on Jul. 7, 2014, now issued as U.S. Pat. No.9,225,897, all of which are incorporated herein by reference in theirentirety.

FIELD OF THE INVENTION

This invention relates generally to photographs taken by a mobile deviceoperative in a networked environment. More particularly, this inventionrelates to supplying such a mobile device with content aware photofilters.

BACKGROUND OF THE INVENTION

The number of digital photographs taken with mobile wireless devices isincreasingly outnumbering photographs taken with dedicated digital andfilm based cameras. Thus, there are growing needs to improve theexperience associated with mobile wireless digital photography.

BRIEF DESCRIPTION OF THE FIGURES

The invention is more fully appreciated in connection with the followingdetailed description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates an electronic device utilized in accordance with anembodiment of the invention.

FIG. 2 illustrates a networked system utilized in accordance with anembodiment of the invention.

FIG. 3 illustrates processing operations associated with an embodimentof the invention.

FIG. 4 illustrates a photograph taken by a digital mobile device.

FIG. 5 illustrates a general filter applied to the photograph.

FIG. 6 illustrates a feature specific filter applied to the photograph.

FIG. 7 illustrates a different feature specific filter with a brandedelement applied to the photograph.

Like reference numerals refer to corresponding parts throughout theseveral views of the drawings.

DETAILED DESCRIPTION OF THE INVENTION

FIG. 1 illustrates an electronic device 100 utilized in accordance withan embodiment of the invention. In one embodiment, the electronic device100 is a Smartphone with a processor 102 in communication with a memory104. The processor 102 may be a central processing unit and/or agraphics processing unit. The memory 104 is a combination of flashmemory and random access memory. The memory 104 stores a photocontroller 106. The photo controller 106 includes executableinstructions to coordinate the capture, display and archiving of digitalphotographs. The photo controller 106 may include photo filterprocessing disclosed herein, which augments or replaces such photofilter processing that is described below in connection with aserver-based photo filter module.

The processor 102 is also coupled to image sensors 115. The imagesensors 115 may be known digital image sensors, such as charge coupleddevices. The image sensors capture visual media, which is presented ondisplay 116, as coordinated by the photo controller 106.

A touch controller 118 is connected to the display 116 and the processor102. The touch controller 118 is responsive to haptic signals applied tothe display 116. In one embodiment, the photo controller 106 monitorssignals from the touch controller 118 to coordinate the capture, displayand archiving of digital photographs. The electronic device 100 may alsoinclude other components commonly associated with a Smartphone, such asa wireless signal processor 120 to support wireless communications, apower control circuit 122 and a global positioning system processor 124.

FIG. 2 illustrates a system 200 configured in accordance with anembodiment of the invention. The system 200 includes a set of clientdevices 100_1 through 100_N. The client devices 100 are connected to anetwork 206, which is any combination of wireless and wired networkcommunication devices. A server 204 is also connected to the network206. The server 204 includes standard components, such as a centralprocessing unit 210 and input/output devices 212 connected via a bus214. The input/output devices 212 may include a keyboard, mouse, displayand the like. A network interface circuit 216 is also connected to thebus 214 to provide connectivity to network 206. A memory 220 is alsoconnected to the bus 214. The memory 220 includes modules withexecutable instructions, such as a photo filter module 222. The photofilter module 222 implements photo evaluation and filter selectionoperations, as discussed below.

FIG. 3 illustrates processing operations associated with an embodimentof the invention. The operations are performed by the photo filtermodule 222 of server 204 in combination with one or more client devices100. Initially, the photo filter module 222 serves a photo prompt 300.For example, the photo filter module 222 may form a segment of a networkexecuted application that coordinates taking photographs and appendingmessages to such photographs for delivery from one user to another. Inthis context, client 100_1 accesses the photo filter module 222 overnetwork 206 to activate the application, which serves the photo promptto the client 100_1. A user at the client 100_1 takes a photo 302.

FIG. 4 illustrates client device 100_1 with a display 400 that presentsa photo prompt 402. Activation of the photo prompt 402 results in apicture 404. The photo filter module 222 monitors the client deviceactivity to determine if a photo is taken 304. If so, the attributes ofthe photograph and client device are evaluated 305. Photo filters areselected and supplied 306 based upon the evaluation.

By way of example, the attributes of the client device may includegeolocation of the client device, which is collected from the GPSprocessor 124. The geolocation may be used to designate photo filtersrelevant to the geolocation. For example, if the geolocation isproximate to a beach, then photo filters to augment a beach setting(e.g., a color filter for water, sand and/or sky) may be supplied. Thegeolocation may be used to select a filter with a brand associated withan establishment proximate to the geolocation. For example, a restaurantor store may sponsor a photo filter that includes a brand associatedwith the restaurant or store. In this case, in addition to the brand,the photo filter may include other indicia associated with therestaurant (e.g., an image of a hamburger or taco) or store (e.g., animage of a surfboard or sunglasses).

The attributes associated with the client device may include establishedpreferences associated with the client device. The establishedpreferences may be defined by explicitly stated preferences supplied bya user. Alternately, the established preferences may be derived fromprior use patterns. For example, explicitly stated or derivedpreferences may indicate that photo filters with a temperature overlay,date and/or time overlay be supplied.

The attributes of the photograph may include the physical environmentcaptured in the photograph. For example, the photograph may be evaluatedto identify an urban setting, a rural setting, a sunset a seascape andthe like. Filters applicable to the physical environment may then besupplied.

The attributes of the photograph may include an object depicted in thephotograph. For example, the evaluation may identify a building, abuilding feature (e.g., door or roof), a flower, an individual, ananimal and the like. Filters applicable to such objects may then besupplied.

The next operation of FIG. 3 is to apply the photo filters 308. Forexample, a swipe across the display of a client device 100_1 may cause aphoto filter to slide across the original photo. FIG. 5 illustrates theresult of a first swipe motion, which results in a darkening filter 500being applied to the original photo. Another swipe motion may result inanother filter being presented. For example, FIG. 6 illustrates theresult of a second swipe motion, which results in an object specificfilter 600 being presented. In this case, the object specific filter 600relates to the identification of a door in the photo. The identificationof the door may result in the supply of a variety of filters fordifferent door colors. Another swipe of the display may result in stillanother filter, such as shown in FIG. 7. The filter of FIG. 7 includesan object specific filter 700, in this case for a roof of a building.The filter also includes a brand component 702. This filter alsoincludes an overlay of the temperature 704 when the photo was taken. Atime overlay 706 and date overlay 708 are also supplied.

Returning to FIG. 3, the next operation is to select a photo filter 310.Selection of a photo filter may include selection of one or moreavailable filters. The photo may then be saved with the applicablefilter or filters. The photo and filter may also be sent to another user312. In this case, the server 204 routes 314 the photo to another client1002, which displays the photo with the filter 316.

Photograph filters may also be selected based upon popular filters.Branded filters may be supplied based upon an auction mechanism. Forexample, vendors may bid on photo filters to be supplied based uponcharacteristics of a user, location of a user, content of a photographand the like.

An embodiment of the present invention relates to a computer storageproduct with a non-transitory computer readable storage medium havingcomputer code thereon for performing various computer-implementedoperations. The media and computer code may be those specially designedand constructed for the purposes of the present invention, or they maybe of the kind well known and available to those having skill in thecomputer software arts. Examples of computer-readable media include, butare not limited to: magnetic media, optical media, magneto-optical mediaand hardware devices that are specially configured to store and executeprogram code, such as application-specific integrated circuits(“ASICs”), programmable logic devices (“PLDs”) and ROM and RAM devices.Examples of computer code include machine code, such as produced by acompiler, and files containing higher-level code that are executed by acomputer using an interpreter. For example, an embodiment of theinvention may be implemented using JAVA®, C++, or other object-orientedprogramming language and development tools. Another embodiment of theinvention may be implemented in hardwired circuitry in place of, or incombination with, machine-executable software instructions.

The foregoing description, for purposes of explanation, used specificnomenclature to provide a thorough understanding of the invention.However, it will be apparent to one skilled in the art that specificdetails are not required in order to practice the invention. Thus, theforegoing descriptions of specific embodiments of the invention arepresented for purposes of illustration and description. They are notintended to be exhaustive or to limit the invention to the precise formsdisclosed; obviously, many modifications and variations are possible inview of the above teachings. The embodiments were chosen and describedin order to best explain the principles of the invention and itspractical applications, they thereby enable others skilled in the art tobest utilize the invention and various embodiments with variousmodifications as are suited to the particular use contemplated. It isintended that the following claims and their equivalents define thescope of the invention.

What is claimed is:
 1. A mobile client device comprising: an imagesensor configured to capture a picture; a user interface configured topresent information and receive user selections; a photo controllerconfigured to designate a plurality of photo filters relevant to atleast one attribute of the mobile client device; a processor; and amemory including instruction for execution by the processor, wherein theinstructions, when executed by the processor, cause the mobile clientdevice to: present a photo prompt on the user interface of the mobileclient device; capture a picture with the image sensor in response to anactivation of the photo prompt; display the captured picture on the userinterface; collect at least one attribute of the mobile client device;designate, using the photo controller, the plurality of photo filtersrelevant to the at least one attribute of the mobile client device,wherein the plurality of photo filters are configured to be individuallyselectable for sequential presentation on the user interface of themobile client device, wherein the plurality of photo filters areindependently selectable in sequence by a user in response to a gestureon the displayed picture as presented by the user interface of themobile client device, and wherein each of the plurality of photo filtersis an overlay for presentation on top of the captured picture to augmentthe captured picture; receive on the user interface the gesture toselect one of the plurality of photo filters in sequence; apply theselected photo filter to the picture; and send the picture with theapplied photo filter to a server for routing to another mobile clientdevice.
 2. The mobile client device of claim 1, wherein theinstructions, when executed by the processor, further cause the mobileclient device to: display a first of the plurality of photo filters onthe picture; and transition from display of the first of the pluralityof photo filters on the picture to a second of the plurality of photofilters on the picture in response to the gesture.
 3. The mobile clientdevice of claim 1, wherein the at least one attribute comprisesgeolocation information and wherein the instruction to designate theplurality of photo filters comprises instructions to cause the mobileclient device to: designate the plurality of photo filters based on thegeolocation information.
 4. The mobile client device of claim 1, whereinthe at least one attribute comprises temperature information and whereinthe instruction to designate the plurality of photo filters comprisesinstructions to cause the mobile client device to: designate theplurality of photo filters based on the temperature information.
 5. Themobile client device of claim 1, wherein the at least one attributecomprises time information and wherein the instruction to designate theplurality of photo filters comprises instructions to cause the mobileclient device to: designate the plurality of photo filters based on thetime information.
 6. The mobile client device of claim 1, wherein the atleast one attribute comprises physical environment information andwherein the instruction to designate the plurality of photo filterscomprises instructions to cause the mobile client device to: designatethe plurality of photo filters based on the physical environmentinformation.
 7. The mobile client device of claim 1, wherein the userinterface comprises a display and wherein the instruction to receive onthe user interface the gesture to select one of the plurality of photofilters comprises instructions to cause the mobile client device to:receive the gesture on the display.
 8. The mobile client device of claim7, wherein the gesture is a swipe across the display.
 9. A method forprocessing pictures captured with a mobile client device, the mobileclient device having a user interface, a camera, and a photo controller,the method comprising: presenting a photo prompt on the user interfaceof the mobile client device; capturing a picture in response to anactivation of the photo prompt; displaying the captured picture on theuser interface; collecting at least one attribute of the mobile clientdevice; designating, using the photo controller, a plurality of photofilters relevant to the at least one attribute of the mobile clientdevice, wherein the plurality of photo filters are configured to beindividually selectable for sequential presentation on the userinterface of the mobile client device, wherein the plurality of photofilters are independently selectable in sequence by a user in responseto a gesture on the displayed picture as presented by the user interfaceof the mobile client device, and wherein each of the plurality of photofilters is an overlay for presentation on top of the captured picture toaugment the captured picture; receiving on the user interface thegesture to select one of the plurality of photo filters in sequence;applying the selected photo filter to the picture; and sending thepicture with the selected photo filter to a server for routing toanother mobile client device.
 10. The method of claim 9, wherein thereceiving the gesture to select one of the plurality of photo filterscomprises receiving an indication that a user has applied the gesture tothe picture while the picture is presented on the user interface of themobile client device.
 11. The method of claim 9, further comprising:displaying a first of the plurality of photo filters on the picture; andtransitioning from displaying the first of the plurality of photofilters on the picture to a second of the plurality of photo filters onthe picture in response to the gesture.
 12. The method of claim 9,wherein the at least one attribute comprises geolocation information andwherein the designating the plurality of photo filters comprises:designating the plurality of photo filters based on the geolocationinformation.
 13. The method of claim 9, wherein the at least oneattribute comprises temperature information and wherein the designatingthe plurality of photo filters comprises: designating the plurality ofphoto filters based on the temperature information.
 14. The method ofclaim 9, wherein the at least one attribute comprises time informationand wherein the designating the plurality of photo filters comprises:designating the plurality of photo filters based on the timeinformation.
 15. The method of claim 9, wherein the at least oneattribute comprises physical environment information and whereindesignating the plurality of photo filters comprises: designating theplurality of photo filters based on the physical environmentinformation.
 16. The method of claim 9, wherein the user interfacecomprises a display and wherein the receiving on the user interface thegesture to select one of the plurality of photo filters comprises:receiving the gesture on the display.
 17. The method of claim 16,wherein the gesture is a swipe across the display.
 18. A non-transitorymachine-readable storage medium storing processor executableinstructions that, when executed by a processor of a mobile clientdevice, cause the mobile client device to perform operations comprising:presenting a photo prompt on the user interface of the mobile clientdevice; capturing a picture with the mobile client device in response toan activation of the photo prompt; displaying the captured picture on auser interface mobile client device; collecting at least one attributeof the mobile client device; designating, using a photo controller ofthe mobile client device, a plurality of photo filters relevant to theat least one attribute of the mobile client device, wherein theplurality of photo filters are configured to be individually selectablefor sequential presentation on the user interface of the mobile clientdevice, wherein the plurality of photo filters are independentlyselectable in sequence by a user in response to a gesture on thedisplayed picture as presented by the user interface of the mobileclient device, and wherein each of the plurality of photo filters is anoverlay for presentation on top of the captured picture to augment thecaptured picture; receiving on the user interface the gesture to selectone of the plurality of photo filters in sequence; applying the selectedphoto filter to the picture; and sending the picture with the selectedphoto filter to a server for routing to another mobile client device.19. The non-transitory machine-readable storage medium of claim 18,wherein the instructions further cause the mobile client device to:displaying a first of the plurality of photo filters on the picture; andtransitioning from displaying the first of the plurality of photofilters on the picture to a second of the plurality of photo filters onthe picture in response to the gesture.
 20. The non-transitorymachine-readable storage medium of claim 18, wherein the at least oneattribute comprises geolocation information and wherein the designatingthe plurality of photo filters comprises: designating the plurality ofphoto filters based on the geolocation information.